SQL OR செயலி

ஒன்று அல்லது அதற்கு மேற்பட்ட நிபந்தனைகள் உண்மையாக இருக்கும் போது பதிவுகளை வடிகட்ட OR செயலியைப் பயன்படுத்தவும்

SQL OR செயலி

WHERE கூற்று ஒன்று அல்லது பல OR செயலிகளைக் கொண்டிருக்கலாம்.

ஒன்றுக்கு மேற்பட்ட நிபந்தனைகளின் அடிப்படையில் பதிவுகளை வடிகட்ட OR செயலி பயன்படுகிறது, எடுத்துக்காட்டாக ஜெர்மனியிலிருந்து அனைத்து வாடிக்கையாளர்களையும் திரும்பப் பெற விரும்பினால், ஆனால் ஸ்பெயினிலிருந்தும் வாடிக்கையாளர்களைப் பெற விரும்பினால்:

உதாரணம்: ஜெர்மனி அல்லது ஸ்பெயினிலிருந்து அனைத்து வாடிக்கையாளர்களையும் தேர்ந்தெடுக்கவும்:

SELECT *
FROM Customers
WHERE Country = 'Germany' OR Country = 'Spain';

தொடரியல்

SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;

OR vs AND

OR செயலி

எந்தவொரு நிபந்தனை TRUE ஆக இருந்தாலும் ஒரு பதிவைக் காட்டும்

WHERE Country = 'Germany' 
OR Country = 'Spain'
முடிவு: ஜெர்மனி அல்லது ஸ்பெயினில் உள்ள பதிவுகள்

AND செயலி

அனைத்து நிபந்தனைகளும் TRUE ஆக இருந்தால் ஒரு பதிவைக் காட்டும்

WHERE Country = 'Germany' 
AND City = 'Berlin'
முடிவு: ஜெர்மனி மற்றும் பெர்லின் இரண்டும் உள்ள பதிவுகள் மட்டும்

ஆர்ப்பாட்ட தரவுத்தளம்

உதாரணங்களில் பயன்படுத்தப்படும் Customers அட்டவணையிலிருந்து ஒரு தேர்வு கீழே உள்ளது:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

குறைந்தது ஒரு நிபந்தனையாவது உண்மையாக இருக்க வேண்டும்

பின்வரும் SQL அறிக்கை City "Berlin" ஆகவோ, CustomerName "G" என்ற எழுத்தில் தொடங்கவோ அல்லது Country "Norway" ஆகவோ உள்ள Customers-லிருந்து அனைத்து புலங்களையும் தேர்ந்தெடுக்கிறது:

உதாரணம்

SELECT * FROM Customers
WHERE City = 'Berlin' OR CustomerName LIKE 'G%' OR Country = 'Norway';

💡 குறிப்பு:

OR செயலியுடன், குறைந்தது ஒரு நிபந்தனையாவது உண்மையாக இருக்க வேண்டும். அனைத்து நிபந்தனைகளும் தவறாக இருந்தால்தான் பதிவு முடிவுகளில் சேர்க்கப்படாது.

AND மற்றும் OR-ஐ இணைத்தல்

நீங்கள் AND மற்றும் OR செயலிகளை இணைக்கலாம்.

பின்வரும் SQL அறிக்கை "G" அல்லது "R" என்ற எழுத்தில் தொடங்கும் ஸ்பெயினிலிருந்து அனைத்து வாடிக்கையாளர்களையும் தேர்ந்தெடுக்கிறது.

சரியான முடிவைப் பெற அடைப்புக்குறிகளைப் பயன்படுத்துவதை உறுதிப்படுத்திக் கொள்ளுங்கள்.

உதாரணம்: "G" அல்லது "R" என்ற எழுத்தில் தொடங்கும் அனைத்து ஸ்பானிஷ் வாடிக்கையாளர்களையும் தேர்ந்தெடுக்கவும்:

SELECT * FROM Customers
WHERE Country = 'Spain' AND (CustomerName LIKE 'G%' OR CustomerName LIKE 'R%');

அடைப்புக்குறிகள் இல்லாமல், SELECT அறிக்கை "G" என்ற எழுத்தில் தொடங்கும் ஸ்பெயினிலிருந்து அனைத்து வாடிக்கையாளர்களையும், கூடுதலாக "R" என்ற எழுத்தில் தொடங்கும் அனைத்து வாடிக்கையாளர்களையும், country மதிப்பைப் பொருட்படுத்தாமல் திரும்பப் பெறும்:

உதாரணம்: பின்வரும் அனைத்து வாடிக்கையாளர்களையும் தேர்ந்தெடுக்கவும்:

SELECT * FROM Customers
WHERE Country = 'Spain' AND CustomerName LIKE 'G%' OR CustomerName LIKE 'R%';

⚠️ முக்கியமானது:

AND மற்றும் OR செயலிகளை இணைக்கும்போது எப்போதும் அடைப்புக்குறிகளைப் பயன்படுத்துங்கள். இது செயலிகள் முன்னுரிமையைத் தெளிவுபடுத்துகிறது மற்றும் எதிர்பார்த்த முடிவுகளை உறுதிப்படுத்துகிறது.

நடைமுறை உதாரணங்கள்

இரண்டு நாடுகள்

இரண்டு நாடுகளில் ஒன்று

WHERE Country = 'USA' 
OR Country = 'Canada'

USA அல்லது கனடாவில் உள்ள வாடிக்கையாளர்கள்

பல நகரங்கள்

பல நகரங்களில் ஒன்று

WHERE City = 'London'
OR City = 'Paris'
OR City = 'Berlin'

லண்டன், பாரிஸ் அல்லது பெர்லினில் உள்ள வாடிக்கையாளர்கள்

பல்வேறு நிபந்தனைகள்

வெவ்வேறு புலங்களில் OR

WHERE Country = 'France' 
OR City = 'Rome'
OR CustomerName LIKE 'A%'

பிரான்ஸில் அல்லது ரோமில் அல்லது A-வில் தொடங்கும் பெயர் உள்ளவர்கள்

பயிற்சி

SQL OR செயலியின் முதன்மை நோக்கம் என்ன?

குறைந்தது ஒரு நிபந்தனை உண்மையாக இருக்கும் பல நிபந்தனைகளின் அடிப்படையில் பதிவுகளை வடிகட்ட
✓ சரி! OR செயலி குறைந்தது ஒரு நிபந்தனை உண்மையாக இருக்கும் போது பதிவுகளைத் திருப்பித் தருகிறது
அனைத்து நிபந்தனைகளும் உண்மையாக இருக்க வேண்டிய பல நிபந்தனைகளின் அடிப்படையில் பதிவுகளை வடிகட்ட
✗ தவறு! இது AND செயலியின் வேலை
பதிவுகளை இறங்குவரிசையில் வரிசைப்படுத்த
✗ தவறு! இது ORDER BY-இன் வேலை
அட்டவணையில் உள்ள வரிசைகளின் எண்ணிக்கையை எண்ணு
✗ தவறு! இது COUNT() செயல்பாட்டின் வேலை